iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 18
1
自我挑戰組

從0開始,一起學C語言吧!系列 第 18

從0開始,一起學C語言吧!(Day18)

  • 分享至 

  • xImage
  •  

Day18-區域與全域變數

那我們今天要教的是區域與全域變數
每一個變數都有自己的生命周期(scope),當變數被宣告時就決定此變數的存在範圍
每種變數稱為區域變數當離開大括號(該程式區塊),該變數就會被銷毀,所在不同程式區塊的區域變數,其名稱可以重複的,並不會造成彼此影響
而全域變數是在程式一開始即宣告,宣告於所有的函式之外,其作用範圍是整個程式

那介紹完了,我們來做個範例吧
範例:

#include<stdio.h>
#include<stdlib.h>
int f(int);
int z;
int main(void){
	int x=10,y;
	y=f(x);
	printf("x=%d,y=%d,z=%d",x,y,z);
	system("pause");
	return 0;
}
int f(int x){
	x=10000;
	return x*x;
}

印出:
https://ithelp.ithome.com.tw/upload/images/20190918/20119958BD5jAz2JG7.png
解釋:在f()函式內的x變數改變時,並不會影響到main涵室內的變數,也就是說,當成是在執行f()函式時,兩個x變數,各自佔有一個記憶體空間,兩者都是各自函式區域變數,在不同函式內的區域變數名稱,是可以相同的。

那今天就先到這
謝謝大家今天的閱讀!!


上一篇
從0開始,一起學C語言吧!(Day17)
下一篇
從0開始,一起學C語言吧!(Day19)
系列文
從0開始,一起學C語言吧!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言